package Model;

import DAO.InterfaceDAO.AdministrateurDAO;
import Factories.FactoryDAO;

public class Administrateur extends Compte {

	private String numAdmin;
	private AdministrateurDAO adao;

	public Administrateur() {
		super();
		this.adao=FactoryDAO.getInstance(null).createAdminDAO();
	}

	public Administrateur(int idCompte, String login, String motDePasse,
			String nom, String prenom) {
		super(idCompte, login, motDePasse, nom, prenom);
		this.adao=FactoryDAO.getInstance(null).createAdminDAO();
	}

	public Administrateur(int idCompte) {
		this.adao=FactoryDAO.getInstance(null).createAdminDAO();
		Administrateur a = this.adao.read(idCompte);
		this.idCompte = idCompte;
		this.login = a.login;
		this.motDePasse = a.motDePasse;
		this.nom = a.nom;
		this.prenom = a.prenom;
		this.active = true; // Roger
		this.numAdmin = a.numAdmin;
	}

	public void inviter(String num, String nom, String prenom) {
		Professeur f=new Professeur();
		f.setNom(nom);
		f.setPrenom(prenom);
		f.setNumProf(num);
		f.setActive(true);
		adao.inviterProf(f);
	}

	public boolean inscription(String login, String motDePasse,
			String nom, String prenom,String numAdmin) {
		boolean result=true;;
		if(!adao.exist(nom,prenom)){
			result=false;
		}
		this.nom=nom;
		this.prenom=prenom;
		this.numAdmin=numAdmin;
		this.login=login;
		this.motDePasse=motDePasse;			
		return result;
	}

	public void inviterAdmin(String num, String nom, String prenom){
		Administrateur a =new Administrateur();
		a.setNom(nom);
		a.setPrenom(prenom);
		a.setNumAdmin(num);
		a.setActive(true);
		adao.inviterAdmin(a);
	}

	public String getNumAdmin() {
		return numAdmin;
	}

	public void setNumAdmin(String numAdmin) {
		this.numAdmin = numAdmin;
	}

	public AdministrateurDAO getAdao() {
		return adao;
	}

	public void setAdao(AdministrateurDAO adao) {
		this.adao = adao;
	}

	public void initAPartirDeBD(String numAdmin2) {}

}
